Next: Filling In Threads, Up: Customizing Threading [Contents][Index]
gnus-summary-make-false-rootIf non-nil, Gnus will gather all loose
subtrees into one big tree and create a dummy root at the
top. (Wait a minute. Root at the top? Yup.) Loose subtrees
occur when the real root has expired, or you’ve read or
killed the root in a previous session.
When there is no real root of a thread, Gnus will have to fudge something. This variable says what fudging method Gnus should use. There are four possible values:
adoptGnus will make the first of the orphaned articles the parent. This parent will adopt all the other articles. The adopted articles will be marked as such by pointy brackets (‘<>’) instead of the standard square brackets (‘[]’). This is the default method.
dummyGnus will create a dummy summary line that will
pretend to be the parent. This dummy line does not
correspond to any real article, so selecting it will just
select the first real article after the dummy article.
gnus-summary-dummy-line-format is used to
specify the format of the dummy roots. It accepts only
one format spec: ‘S’, which is
the subject of the article. See Formatting
Variables. If you want all threads to have a dummy
root, even the non-gathered ones, set
gnus-summary-make-false-root-always to
t.
emptyGnus won’t actually make any article the parent,
but simply leave the subject field of all orphans except
the first empty. (Actually, it will use
gnus-summary-same-subject as the subject
(see Summary
Buffer Format).)
noneDon’t make any article parent at all. Just gather the threads and display them after one another.
nilDon’t gather loose threads.
gnus-summary-gather-subject-limitLoose threads are gathered by comparing subjects of
articles. If this variable is nil, Gnus requires
an exact match between the subjects of the loose threads
before gathering them into one big super-thread. This might
be too strict a requirement, what with the presence of stupid
newsreaders that chop off long subject lines. If you think
so, set this variable to, say, 20 to require that only the
first 20 characters of the subjects have to match. If you set
this variable to a really low number, you’ll find that
Gnus will gather everything in sight into one thread, which
isn’t very helpful.
If you set this variable to the special value
fuzzy, Gnus will use a fuzzy string comparison
algorithm on the subjects (see Fuzzy Matching).
gnus-simplify-subject-fuzzy-regexpThis can either be a regular expression or list of regular expressions that match strings that will be removed from subjects if fuzzy subject simplification is used.
gnus-simplify-ignored-prefixesIf you set gnus-summary-gather-subject-limit
to something as low as 10, you might consider setting this
variable to something sensible:
(setq gnus-simplify-ignored-prefixes
(concat
"\\`\\[?\\("
(mapconcat
'identity
'("looking"
"wanted" "followup" "summary\\( of\\)?"
"help" "query" "problem" "question"
"answer" "reference" "announce"
"How can I" "How to" "Comparison of"
;; ...
)
"\\|")
"\\)\\s *\\("
(mapconcat 'identity
'("for" "for reference" "with" "about")
"\\|")
"\\)?\\]?:?[ \t]*"))
All words that match this regexp will be removed before comparing two subjects.
gnus-simplify-subject-functionsIf non-nil, this variable overrides
gnus-summary-gather-subject-limit. This variable
should be a list of functions to apply to the
Subject string iteratively to arrive at the
simplified version of the string.
Useful functions to put in this list include:
gnus-simplify-subject-reStrip the leading ‘Re:’.
gnus-simplify-subject-fuzzySimplify fuzzily.
gnus-simplify-whitespaceRemove excessive whitespace.
gnus-simplify-all-whitespaceRemove all whitespace.
You may also write your own functions, of course.
gnus-summary-gather-exclude-subjectSince loose thread gathering is done on subjects only,
that might lead to many false hits, especially with certain
common subjects like ‘’ and
‘(none)’. To make the situation
slightly better, you can use the regexp
gnus-summary-gather-exclude-subject to say what
subjects should be excluded from the gathering process.
The default is ‘^
*$\\|^(none)$’.
gnus-summary-thread-gathering-functionGnus gathers threads by looking at Subject
headers. This means that totally unrelated articles may end
up in the same “thread”, which is confusing. An
alternate approach is to look at all the
Message-IDs in all the References
headers to find matches. This will ensure that no gathered
threads ever include unrelated articles, but it also means
that people who have posted with broken newsreaders
won’t be gathered properly. The choice is
yours—plague or cholera:
gnus-gather-threads-by-subjectThis function is the default gathering function and
looks at Subjects exclusively.
gnus-gather-threads-by-referencesThis function looks at References headers
exclusively.
If you want to test gathering by References,
you could say something like:
(setq gnus-summary-thread-gathering-function
'gnus-gather-threads-by-references)
Next: Filling In Threads, Up: Customizing Threading [Contents][Index]